LEADTOOLS Image Processing (Leadtools.ImageProcessing.Core assembly)

ApplyModalityLookupTableCommand Constructor(DicomLookupTableDescriptor,Int16[],ModalityLookupTableCommandFlags)

Show in webframe
Example 







Structure describing the LookupTable. The following members are used:
Value Meaning
FirstStoredPixelValueMapped Indicates the first index whose remapped value is stored in the LookupTable. All pixels that are less than this value will be remapped to LookupTable[0].
Array of short values that contains the lookup table. Its length determines the number of entries. All the pixels that are greater than FirstStoredPixelValueMapped + (LookupTable->Length) will be set to the last entry in the LookupTable (LookupTable[LookupTable->Length - 1]).
Flags that determine the behavior of this method. These flags can be OR-ed together.
Initializes a new ApplyModalityLookupTableCommand with explicit parameters.
Syntax
public ApplyModalityLookupTableCommand( 
   DicomLookupTableDescriptor lookupTableDescriptor,
   short[] lookupTable,
   ModalityLookupTableCommandFlags flags
)
'Declaration
 
Public Function New( _
   ByVal lookupTableDescriptor As DicomLookupTableDescriptor, _
   ByVal lookupTable() As Short, _
   ByVal flags As ModalityLookupTableCommandFlags _
)
'Usage
 
Dim lookupTableDescriptor As DicomLookupTableDescriptor
Dim lookupTable() As Short
Dim flags As ModalityLookupTableCommandFlags
 
Dim instance As New ApplyModalityLookupTableCommand(lookupTableDescriptor, lookupTable, flags)
public ApplyModalityLookupTableCommand( 
   DicomLookupTableDescriptor lookupTableDescriptor,
   short[] lookupTable,
   ModalityLookupTableCommandFlags flags
)
- (id)initWithLookupTableDescriptor:(LTDicomLookupTableDescriptor*)lookupTableDescriptor 
                        lookupTable:(const unsigned short*)lookupTable 
                  lookupTableLength:(unsigned int)lookupTableLength 
                              flags:(LTModalityLookupTableCommandFlags)flags;
            
public ApplyModalityLookupTableCommand(
   DicomLookupTableDescriptor lookupTableDescriptor, 
   int[] lookupTable, 
   int flags
)
            
function ApplyModalityLookupTableCommand( 
   lookupTableDescriptor ,
   lookupTable ,
   flags 
)

Parameters

lookupTableDescriptor
Structure describing the LookupTable. The following members are used:
Value Meaning
FirstStoredPixelValueMapped Indicates the first index whose remapped value is stored in the LookupTable. All pixels that are less than this value will be remapped to LookupTable[0].
lookupTable
Array of short values that contains the lookup table. Its length determines the number of entries. All the pixels that are greater than FirstStoredPixelValueMapped + (LookupTable->Length) will be set to the last entry in the LookupTable (LookupTable[LookupTable->Length - 1]).
flags
Flags that determine the behavior of this method. These flags can be OR-ed together.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core

Public Sub ApplyModalityLookupTableConstructorExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"))

   ' Prepare the command
   Dim i As Integer
   Dim pLookupTable() As Short
   ReDim pLookupTable(65535)
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16)
   ' set a LookupTable which reduces the intensity of each pixel to half
   For i = 0 To 65535
      pLookupTable(i) = CType(i \ 2, Int16)
   Next
   ' apply the LookupTable
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None)
   command.Run(leadImage)

End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;

public void ApplyModalityLookupTableConstructorExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;

   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE2.dcm"));

   // Prepare the command
   int                i; 
   short[] pLookupTable = new short[65536]; 
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16);

   // set a LookupTable which reduces the intensity of each pixel to half
   for(i = 0; i < 65536; i++)
      pLookupTable[i] = (short)(i / 2);

   // apply the LookupTable
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
   command.Run(image);

}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
function ApplyModalityLookupTableConstructorExample()
{
   var codecs = new Leadtools.Codecs.RasterCodecs();
   codecs.throwExceptionsOnInvalidImages = true;

   // Load the image
   var srcFileName = "Assets\\Image2.dcm";
   return Tools.AppInstallFolder().getFileAsync(srcFileName).then(function (loadFile) {
      return codecs.loadAsync(Leadtools.LeadStreamFactory.create(loadFile));
   }).then(function (image){
      with (Leadtools.ImageProcessing.Core) {
         // Prepare the command
         var i; 
         var pLookupTable = new Array();; 
         var LookupTableDescriptor = new DicomLookupTableDescriptor();
         
         // set a LookupTable which reduces the intensity of each pixel to half
         for(i = 0; i <= 0xFFFF; i++)
            pLookupTable[i] = parseInt(i / 2);
         
         // apply the LookupTable
         var command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
         command.run(image);
      }
   });

}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;

      
public async Task ApplyModalityLookupTableConstructorExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Image2.dcm";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Prepare the command
   int                i; 
   short[] pLookupTable = new short[65536]; 
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16);

   // set a LookupTable which reduces the intensity of each pixel to half
   for(i = 0; i < 65536; i++)
      pLookupTable[i] = (short)(i / 2);

   // apply the LookupTable
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
   command.Run(image);

}
using Leadtools;
using Leadtools.Examples;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Core;

public void ApplyModalityLookupTableConstructorExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   int i;
   short[] pLookupTable = new short[65536];
   DicomLookupTableDescriptor LookupTableDescriptor = new DicomLookupTableDescriptor(0, 16);
   // set a LookupTable which reduces the intensity of each pixel to half
   for (i = 0; i < 65536; i++)
      pLookupTable[i] = (short)(i / 2);

   // apply the LookupTable
   ApplyModalityLookupTableCommand command = new ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None);
   command.Run(image);

   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Core

Public Sub ApplyModalityLookupTableConstructorExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim i As Integer
   Dim pLookupTable As Short() = New Short(65535){}
   Dim LookupTableDescriptor As DicomLookupTableDescriptor = New DicomLookupTableDescriptor(0, 16)
   ' set a LookupTable which reduces the intensity of each pixel to half
   For i = 0 To 65535
      pLookupTable(i) = CShort(i / 2)
   Next i

   ' apply the LookupTable
   Dim command As ApplyModalityLookupTableCommand = New ApplyModalityLookupTableCommand(LookupTableDescriptor, pLookupTable, ModalityLookupTableCommandFlags.None)
   command.Run(image)

   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub
Requirements

Target Platforms

See Also

Reference

ApplyModalityLookupTableCommand Class
ApplyModalityLookupTableCommand Members
Overload List

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.